//package com.ttdevs.ttrss;
//
//import java.io.IOException;
//import java.util.ArrayList;
//import java.util.HashMap;
//import java.util.Iterator;
//import java.util.List;
//import java.util.Map;
//
//import android.app.Activity;
//import android.app.ProgressDialog;
//import android.content.Intent;
//import android.database.Cursor;
//import android.database.CursorWrapper;
//import android.os.Bundle;
//import android.os.Handler;
//import android.os.Message;
//import android.os.Parcelable;
//import android.view.View;
//import android.view.View.OnClickListener;
//import android.widget.AdapterView;
//import android.widget.EditText;
//import android.widget.ListView;
//import android.widget.SimpleAdapter;
//import android.widget.SimpleCursorAdapter;
//import android.widget.TextView;
//import android.widget.AdapterView.OnItemClickListener;
//
//import com.ttdevs.ttrss.bean.Article;
//import com.ttdevs.ttrss.bean.Source;
//import com.ttdevs.ttrss.db.DBManagerOld;
//import com.ttdevs.ttrss.parse.PullParserSource;
//import com.ttdevs.ttrss.util.TtLog;
//
//public class AddRSS extends Activity implements OnClickListener {
//	private final static String PARSERRESULT = "parser_result";
//	private ProgressDialog progressDialog;
//	private String rssSource;
//	private EditText custom;
//	private TextView title;
//	private Source source;
//	private DBManagerOld dbManager;
//	private ListView listView;
//
//	private Handler handler = new Handler() {
//		@Override
//		public void handleMessage(Message msg) {
//			super.handleMessage(msg);
//			Source source = (Source) msg.getData().get(PARSERRESULT);
//			custom.setText(source.getTitle());
//			title.setText(source.getTitle());
//			stopProsessBar();
//			TtLog.d("Click SAX View:" + System.currentTimeMillis());
//		}
//	};
//
//	@Override
//	protected void onCreate(Bundle savedInstanceState) {
//		super.onCreate(savedInstanceState);
//		setContentView(R.layout.dialog_addrss);
//		TtLog.d("AddRSS");
//		findViewById(R.id.cancel).setOnClickListener(this);
//		findViewById(R.id.get).setOnClickListener(this);
//		findViewById(R.id.submit).setOnClickListener(this);
//		custom = (EditText) findViewById(R.id.custom);
//		title = (TextView) findViewById(R.id.title);
//		listView = (ListView) findViewById(R.id.listview);
//		dbManager = new DBManagerOld(this);
//	}
//
//	@Override
//	protected void onDestroy() {
//		super.onDestroy();
//		// Ӧ�õ����һ��Activity�ر�ʱӦ�ͷ�DB
//		dbManager.closeDB();
//	}
//
//	@Override
//	public void onClick(View v) {
//		switch (v.getId()) {
//		case R.id.cancel:
//			TtLog.d("cancel...");
//			finish();
//			break;
//		case R.id.get:
//			TtLog.d("get...");
//			rssSource = ((EditText) findViewById(R.id.rssurl)).getText()
//					.toString();
//			startProsessBar();
//			new Thread(saxParse, "sax").start();
//			break;
//		case R.id.submit:
//			TtLog.d("submit...");
//			source.setCustom(custom.getText().toString());
//			source.setSource(rssSource);
//			addSource(source);
//			refreshSourceList(listView);
//			// finish();
//		default:
//			break;
//		}
//	}
//
//	Runnable saxParse = new Runnable() {
//
//		@Override
//		public void run() {
//			try {
//				TtLog.d("�����߳�...");
//				source = new PullParserSource().parse(rssSource);
//				TtLog.d("����ɹ�...");
//
//				sendMessage(handler, source);
//			} catch (IOException e) {
//				TtLog.d("IO error");
//				e.printStackTrace();
//			} catch (Exception e) {
//				TtLog.d("parse error");
//				e.printStackTrace();
//			}
//
//		}
//	};
//
//	private void startProsessBar() {
//		// ������
//		if (progressDialog == null || !progressDialog.isShowing()) {
//			progressDialog = new ProgressDialog(this);
//			progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
//			progressDialog.setCancelable(true);
//			progressDialog.setMessage("���ڷ�f��-ȡ���...");
//			progressDialog
//					.setProgressStyle(android.R.style.TextAppearance_Holo);
//			progressDialog.show();
//		}
//	}
//
//	private void stopProsessBar() {
//		// ������
//		if (progressDialog != null) {
//			progressDialog.dismiss();
//		}
//	}
//
//	/**
//	 * send message,�˴������漰���л�������
//	 * 
//	 * @param handler
//	 * @param obj
//	 */
//	private void sendMessage(Handler handler, Object obj) {
//		Message msg = new Message();
//		Bundle bundleData = msg.getData();
//		bundleData.putParcelable(PARSERRESULT, (Parcelable) obj);
//		msg.setData(bundleData);
//		handler.sendMessage(msg);
//	}
//
//	private void addSource(Source source) {
//		dbManager.insertSource(source);
//	}
//
//	private void refreshSourceList(View view) {
//		String[] mFrom = new String[] { "title", "description", "author",
//				"pubdate" };
//		int[] mTo = new int[] { R.id.title, R.id.description, R.id.author,
//				R.id.pubdate };
//		List<Source> sourceList = dbManager.queryAllSource();
//		List<Map<String, Object>> listMaps = new ArrayList<Map<String, Object>>();
//		Iterator<Source> iterator = sourceList.iterator();
//		while (iterator.hasNext()) {
//			Source source = iterator.next();
//			Map<String, Object> map = new HashMap<String, Object>();
//			map.put("title", source.getTitle());
//			map.put("pubdate", source.getPubDate());
//			map.put("link", source.getLink());
//			listMaps.add(map);
//			source = null;
//		}
//
//		SimpleAdapter simpleAdapter = new SimpleAdapter(this, listMaps,
//				R.layout.article_item_l, mFrom, mTo);
//		listView.setAdapter(simpleAdapter);
//		listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
//		listView.setOnItemClickListener(itemClick);
//	}
//
//	OnItemClickListener itemClick = new OnItemClickListener() {
//
//		@Override
//		public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
//				long arg3) {
//			// AdapterView<?> parent, View view, int position, long id
//			HashMap<String, Object> map = (HashMap<String, Object>) arg0
//					.getItemAtPosition(arg2);
//			TtLog.d(map.get("link").toString());
//		}
//	};
//}
